﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Microsoft.Practices.Unity;
using Triunfadores.BusinessEntities;
using Triunfadores.BusinessLogic.Service;

namespace Triunfadores.Web.Prestamos
{
    public partial class SolicitudPrestamos : System.Web.UI.Page
    {
        [Dependency]
        public IClienteService ClienteService { get; set; }

        [Dependency]
        public ISolicitudPrestamoService SolicitudPrestamoService { get; set; }

        //declaro una variable global
        private static int idCliente;

        protected void Page_Load(object sender, EventArgs e)
        {
            var accion = Request.QueryString["opc"];
            var id = Request.QueryString["idCliente"];

            if (accion != null && accion == "nuevo")
            {
                fvSolicitudPrestamo.DefaultMode = FormViewMode.Insert;
                lblFecha.Text = DateTime.Now.ToShortDateString();
            }

        }

        #region CONSULTAS GET
        protected void btnBuscarCliente_Click(object sender, EventArgs e)
        {
            var dni = tbxDniCliente.Text;

            var cliente = ClienteService.FindSearchingFromClienteByDni(dni);

            if (cliente != null)
            {
                lblError.Text = "";

                idCliente = cliente.Id;

                lblNombreCliente.Text = cliente.Nombres + " " + cliente.Apellidos;
                lblDniCliente.Text = cliente.Dni;
                lblTelefonoCliente.Text = cliente.Telefono;
                lblDireccionCliente.Text = cliente.Direccion;
                lblEmailCliente.Text = cliente.Email;

                //lblMensajeSocio.Text = "";
                //var ventaAccion = Cache.Get("venta") as VentaAccion;

                //ventaAccion.Socio = cliente;
                //ventaAccion.IdSocio = cliente.Id;

                //BindingVenta(ventaAccion);

                //Cache.Insert("venta", ventaAccion);

            }
            else
            {
                lblError.Text = "El cliente no existe...!!!";

                lblNombreCliente.Text = "";
                lblDniCliente.Text = "";
                lblTelefonoCliente.Text = "";
                lblDireccionCliente.Text = "";
                lblEmailCliente.Text = "";
            }

        }
        #endregion

        //registrar Solicitud de Prestamo
        public void RegistrarSolicitudPrestamo(SolicitudPrestamo solicitudPrestamo)
        {
            //una que ayamos guardado el beneficiario vamos a usar su Id que esta en la variable idBenefiaciario
            solicitudPrestamo.IdCliente = idCliente;
            solicitudPrestamo.Estado = "Por Revisar";
            solicitudPrestamo.FechSolicitud = DateTime.Parse(lblFecha.Text);

            //var ddlTipoPago = fvSolicitudPrestamo.FindControl("ddlTipoPago") as DropDownList;
            //solicitudPrestamo.TipoPago = ddlTipoPago.SelectedValue.ToString();
            solicitudPrestamo.TipoPago =
                (fvSolicitudPrestamo.FindControl("ddlTipoPago") as DropDownList).SelectedValue.ToString();

            //else
            //{
            //    cliente.IdBeneficiario = null;
            //}

            //if (ModelState.IsValid)
            SolicitudPrestamoService.AddSolicitudPrestamo(solicitudPrestamo);

            Response.Redirect("~/Default.aspx");
        }

    }
}